/*
 * Cilinder.h
 *
 *  Created on: 14/04/2013
 *      Author: gonzalo
 */

#ifndef CILINDER_H_
#define CILINDER_H_

#include "Figure.h"

class Cilinder: public Figure {
private:

	GLuint * index_tapas;
	GLuint index_tapas_size;
	GLfloat * normal_buffer_tapas;
	GLuint normal_buffer_tapas_size;

	GLuint size_tapa;
	GLuint size_index_tapas;

	void create_vertex_buffer(GLuint segments);
	void create_index_buffer(GLuint segments);
	void create_normal_buffer( GLuint segments);

	void create_mesh(unsigned int segments);

public:
	Cilinder(GLuint  program, GLuint segments);
	virtual ~Cilinder();
	virtual void draw(GLuint program, glm::mat4 & world_matrix);

	//virtual void change_texture_data(const std::vector<DatosVertice> & texturas);
};

#endif /* CILINDER_H_ */
